package hcn.protocol.brandnew.dengji.zhuyuandengji;

import lombok.Data;
import javax.xml.bind.annotation.*;
import java.util.List;
import hcn.protocol.brandnew.BaseRequest;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import ctd.util.xml.jaxb.DateTimeAdapter;
import org.atag.sysrouter.annotation.DictionaryMapping;

import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * 住院预约信息新增-请求消息 - ODS_02050001
 *
 * @author enjoyLife
 */
@Data
@XmlRootElement(name = "MsgBody")
@XmlAccessorType(XmlAccessType.FIELD)
public class SubmitAppointmentRequest extends BaseRequest {

    /**
     * 医疗机构组织机构代码
     */
    @XmlElement(name = "VisitOrganization")
    private String visitOrganization;
    /**
     * 证件类型
     */
    @XmlElement(name = "IdCardCode")
    @DictionaryMapping(id = "CV02_01_101")
    private String idCardCode;
    /**
     * 证件号码
     */
    @XmlElement(name = "IdCard")
    private String idCard;
    /**
     * 科室代码
     */
    @XmlElement(name = "VisitDeptId")
    private String visitDeptId;
    /**
     * 电话号码
     */
    @XmlElement(name = "PatientPhone")
    private String patientPhone;
    /**
     * 联系人与患者的关系代码
     */
    @XmlElement(name = "RelationShipWithPatient")
    private String relationShipWithPatient;
    /**
     * 联系人姓名
     */
    @XmlElement(name = "ContactPerson")
    private String contactPerson;
    /**
     * 联系人电话号码
     */
    @XmlElement(name = "ContactPersonTel")
    private String contactPersonTel;
    /**
     * 病房类型
     */
    @XmlElement(name = "SickRoomType")
    private String sickRoomType;
    /**
     * 期望入院日期
     */
    @XmlElement(name = "ExpectDate")
//    @XmlJavaTypeAdapter(DateTimeAdapter.class)
//    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private String expectDate;


    /**
     * 住院证号
     */
    @XmlElement(name = "HospitalProveCode")
    private String hospitalProveCode;
    /**
     * 开证日期
     */
    @XmlElement(name = "ProveDate")
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date proveDate;
    /**
     * 住院预约类型
     */
    @XmlElement(name = "AppointmentType")
    private String appointmentType;

}
